home *** CD-ROM | disk | FTP | other *** search
/ Microsoft Multimedia Viewer How-To CD / Microsoft Multimedia Viewer How-To CD.iso / mvsample / progsamp / katasrch / katasrch.h < prev    next >
C/C++ Source or Header  |  1993-03-21  |  4KB  |  136 lines

  1. // KATASRCH.H
  2.  
  3. // Control IDs for Search dialog box
  4.  
  5. #define ID_SEARCHDIALOG         100
  6. #define ID_TEXT1                101
  7. #define ID_QUERY                102
  8. #define ID_TEXT2                103
  9. #define ID_RANK                 104
  10.  
  11. #define ID_TEXT3                105
  12. #define ID_GROUPANY             106
  13. #define ID_GROUPSEL             107
  14. #define ID_CUONGNHU             108
  15. #define ID_SHOTOKAN             109
  16. #define ID_WINGTSUN             110
  17.  
  18. #define ID_HELP                 112
  19. #define ID_HELPCOMMAND          113
  20.  
  21. // Bit masks for topic group selections
  22.  
  23. #define SELECT_CUONGNHU 0x01
  24. #define SELECT_SHOTOKAN 0x02
  25. #define SELECT_WINGTSUN 0x04
  26.  
  27. // Control IDs for results window controls
  28.  
  29. #define ID_RESULTSDIALOG        200
  30. #define ID_RESULTS_LIST         201
  31. #define ID_RESULTS_PREVIOUS     202
  32. #define ID_RESULTS_NEXT         203
  33. #define ID_RESULTS_ICON         204
  34.  
  35. #define RESULTS_BUTTON_HEIGHT 25
  36. #define RESULTS_BUTTON_WIDTH  70
  37.  
  38. // String resources/error codes
  39.  
  40. #define KSERR_NOVWRINFO          300
  41. #define KSERR_NOVWR              301
  42. #define KSERR_MEMORY             302
  43.  
  44. #define KSERR_CANTOPENTOPICGROUP 310
  45. #define KSERR_CANTOPENWORDWHEEL  311
  46. #define KSERR_CANTOPENTITLE      312
  47. #define KSERR_CANTLOADWORDWHEELPHRASE    313
  48.  
  49. #define KSERR_QUERY              320
  50. #define KSERR_NOQUERY            321
  51. #define KSERR_NOGROUPSSELECTED   322
  52. #define KSERR_QUERYLENGTH        323
  53.  
  54. #define KSERR_NOTOPICSFOUND      330
  55. #define KSERR_CANTCREATERESULTS  331
  56. #define KSERR_RESIZE_SL          332
  57. #define KSERR_NONEXT             333
  58. #define KSERR_NOPREVIOUS         334
  59. #define KSERR_DISPLAYFAILED      335
  60. #define KSERR_DISPLAYGETINFO     336
  61. #define KSERR_TOPICLOOKUP        337
  62. #define KSERR_TOPICGETINFO       338
  63.  
  64. #define KSERR_QUERYBASE          400
  65. #define KSERR_NULLQUERY          (KSERR_QUERYBASE+ERR_NULLQUERY    )
  66. #define KSERR_EXPECTEDTERM       (KSERR_QUERYBASE+ERR_EXPECTEDTERM )
  67. #define KSERR_MISSQUOTE          (KSERR_QUERYBASE+ERR_MISSQUOTE    )
  68. #define KSERR_MISSLPAREN         (KSERR_QUERYBASE+ERR_MISSLPAREN   )
  69. #define KSERR_MISSRPAREN         (KSERR_QUERYBASE+ERR_MISSRPAREN   )
  70. #define KSERR_TOODEEP            (KSERR_QUERYBASE+ERR_TOODEEP      )
  71. #define KSERR_TOOMANYTOKENS      (KSERR_QUERYBASE+ERR_TOOMANYTOKENS)
  72. #define KSERR_BADVALUE           (KSERR_QUERYBASE+ERR_BADVALUE     )
  73. #define KSERR_BADRANGEOP         (KSERR_QUERYBASE+ERR_BADRANGEOP   )
  74. #define KSERR_ALL_WILD           (KSERR_QUERYBASE+ERR_ALL_WILD     )
  75. #define KSERR_NON_LAST_WILD      (KSERR_QUERYBASE+ERR_NON_LAST_WILD)
  76.  
  77.  
  78. // Word wheel number for belt level field
  79.  
  80. #define WHEEL_LEVEL  12
  81.  
  82. // A maximum length for search query text
  83.  
  84. #define QUERY_LENGTH 128
  85.  
  86. // Task information structure
  87.  
  88. typedef struct
  89. {
  90.     char   szMVB[_MAX_PATH];
  91.     HWND   hwndViewer;
  92.     VWR    vwr;
  93.     VWR    vwrHelp;
  94.     HTITLE htitle;
  95.     HWND   hwndResults;
  96.     HTLIST htlResults;
  97.     HANDLE hHighlight;
  98.     HFONT  hfontDlg;
  99.     long   lNumTopics;
  100.     long   lNextResult;
  101.     UINT   uiWMRegDlg;
  102.  
  103. } VWRINFO, FAR *LPVWRINFO;
  104.  
  105. extern HANDLE ghModule;
  106.  
  107. int CALLBACK LibMain(HINSTANCE hinst, WORD wDataSeg, WORD cbHeap, 
  108.                         LPSTR lpszCmdLine );
  109.  
  110. HFONT GetDialogFont(HWND hwnd);
  111.  
  112. int InitViewerInfo(LPVWRINFO lpVwrInfo, HWND hwndViewer, LPSTR lpszTitle);
  113.  
  114. void WINAPI DoSearchDialog(DWORD dwHwndViewer, LPSTR lpszTitle);
  115. void WINAPI ExecFullTextSearch(DWORD dwHwndViewer, LPSTR lpszTitle, 
  116.                         LPSTR lpszQuery, LPSTR lpszUnused);
  117. LONG WINAPI LDLLHandler(UINT msg,LPARAM lParam1,  LPARAM lParam2);
  118.  
  119. int DoSearch(LPVWRINFO lpVwrInfo, LPSTR lpszQuery, HTLIST htlDomain,
  120.                         LPQUERYERR lpqerr, WORD wFlags);
  121.  
  122. void ShowMessage(HWND hWnd, int nMessage, int nIcon);
  123. void ShowQueryError(HWND hWnd, LPQUERYERR lpqerr);
  124. int DisplaySearchHelp(VWR FAR *lpvwrHelp, LPSTR lpszMVB);
  125. int LoadWheel(HWND hWnd, LPSTR lpszMVB, LPSTR lpszWheel);
  126. HTLIST LoadGroup(HTITLE hTitle, HTLIST htlDomain, LPSTR  lpszGroup, int nOp, BOOL bDelete);
  127. int BuildDomain(HWND hwnd, LPVWRINFO lpVwrInfo, HTLIST FAR *lphtl);
  128. int BuildQuery(HWND hwnd, LPVWRINFO lpVwrInfo, LPSTR lpszQuery);
  129.  
  130. int DoQueryDialogSearch(HWND hwnd, LPVWRINFO lpVwrInfo, LPQUERYERR lpqerr);
  131. int InitDialogControls(HWND hwnd, LPVWRINFO lpVwrInfo);
  132.  
  133. BOOL CALLBACK SearchDlgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
  134.  
  135.  
  136.